The development of very low cost microprocessors in the form of integrated circuits has led to their incorporation in a variety of control devices for use in homes or business places. Many of these devices require no special initialization or programming before they may be used, but others must be programmed before use to initialize them for the particular control environment in which they are to be used. For example, a programmable thermostat capable of controlling a home HVAC system to obtain desired temperatures at all times on a weekly basis must be initialized with the desired program of times and temperatures before it can be used. Another microprocessor based device with a program which must be initialized is a remote control for video cassette recorders to allow the recording of selected future programs. Manufactured by Gemstar, Inc. of Los Angeles, Calif., and sold under the VCR Plus trademark, the operator programs the device to achieve the future recording of a particular desired TV program by entering into the device's keyboard a short numerical code printed in association with the desired program listing in a television guide. The device then transmits infrared codes to the video cassette recorder, and an associated cable tuner if one is used, to control the energization and tuning of the units to achieve recording of that particular program.
These units must be initialized for use in a particular environment. Assume, for example, that the same TV listings are made available to two users of the controls who subscribe to different cable systems and own different VCRs and each of the users wants to record the same program and will key the same codes into their remote devices. The infrared signals sent out by the two devices to the user's respective VCRs must differ from one another because of two factors: first, a given TV station will likely be received on a first channel over one cable system and on a different channel on another cable system; and second, the control codes required to tune and energize the two VCRs will differ from one another. Accordingly, during initialization the remote device must be programmed with information as to the cable channels on which particular stations are received and as to the nature of the control codes of the associated VCRs and cable boxes. This is typically achieved by throwing a switch on the remote device into a "learn" mode in which the operator keys in information relating to the channel allocation of cable system and the nature of the control codes of the VCR and cable box, and the present time in a manner described in an operator's manual. This initialization routine is quite complicated and many users abandon the devices in frustration during an attempted initialization routine. The need for a simplified method of initializing the programming of such control devices is apparent.